package main

import (
	"fmt"
)

//将匿名函数赋值给全局变量，则叫“全局匿名函数”
var myFunc = func(n1 int32, n2 int32) int32 {
	return n1 * n2
}

func main() {
	//1.定义时就使用匿名函数
	sum := func(n1 int32, n2 int32) int32 {
		return n1 + n2
	}(1, 2)
	fmt.Println("sum=", sum)

	//匿名函数赋值给变量，通过变量来调用
	//这样就可以多次调用
	myTmpFunc := func(n1 int32, n2 int32) int32 {
		return n1 - n2
	}
	fmt.Println("sub=", myTmpFunc(2, 1))

	fmt.Println("sub2=", myTmpFunc(3, 1))

	fmt.Println("n1*n2=", myFunc(3, 3))

}
